.TH "contextFree.parser" 3 "Wed Mar 21 2012" "Version 1.1" "Context Free LALR1 compiler" \" -*- nroff -*-
.ad l
.nh
.SH NAME
contextFree.parser \- 
.PP
Contains class and method for create and initialize grammar parser\&.  

.SH SYNOPSIS
.br
.PP
.SS "Classes"

.in +1c
.ti -1c
.RI "class \fBAutoma\fP"
.br
.ti -1c
.RI "class \fBIndexedProduction\fP"
.br
.ti -1c
.RI "interface \fBIParser\fP"
.br
.ti -1c
.RI "class \fBLALR1\fP"
.br
.ti -1c
.RI "class \fBLR0\fP"
.br
.ti -1c
.RI "class \fBLR1\fP"
.br
.ti -1c
.RI "class \fBParserFactory\fP"
.br
.ti -1c
.RI "class \fBState\fP"
.br
.in -1c
.SH "Detailed Description"
.PP 
Contains class and method for create and initialize grammar parser\&. 

Have been implemented LALR(1) bottom-up parser (\fBLALR1\fP) (LR(0) and LR(1) closure and goto have been implemented in respective class) The \fBLALR1\fP automaton is constructed through the \fBLR0\fP automaton\&. The lookahead symbols are calculated using an algorithm of 'spontaneous generation and propagation of symbols' (see \fBLALR1\&.calculateSymbol(Automa)\fP) When the automaton is constructed, if the grammar is LALR(1) the Action and Goto table are created and stored inside the \fBLALR1\fP instance (see \fBLALR1\&.tableCostruction()\fP)\&.
.br
.PP
USAGE: You can use the \fBParserFactory\fP class to obtain an instance:
.br
 example:
.br
 1)you can pass a IGrammar grammar\&.\&.\&.
.br
 \fBParserFactory\fP factory = new ParserFactory();
.br
 \fBIParser\fP lalr1 = factory\&.createParsing(IGrammar grammar);
.br
 
.br
 2)\&.\&.\&.or an InputParser instance (contains the path of grammar file, ex\&.'file\&.4l', and the grammar instance)
.br
.PP
InputParser parser = new GrammarParser(path);
.br
 \fBParserFactory\fP factory = new ParserFactory();
.br
 \fBIParser\fP lalr1 = factory\&.createParser(parser);
.br
 
.SH "Author"
.PP 
Generated automatically by Doxygen for Context Free LALR1 compiler from the source code\&.
